package com.mareas.web.model;

// Generated 30/11/2011 23:01:23 by Hibernate Tools 3.4.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Datosarribo generated by hbm2java
 */
@Entity
@Table(name = "datosarribo", catalog = "mareasdb")
public class Datosarribo implements java.io.Serializable {

	private Integer arriboId;
	private Practico practico;
	private Operacion operacion;
	private String arriboBuqueSitio;
	private String arriboBuqueCapNom;
	private String arriboBuqueCapAp;
	private Date arriboFchEstimadaSal;
	private Integer arriboCargadoLastre;
	private String arriboProcedenciaCiud;
	private String arriboProcedenciaPais;
	private String arriboProcedenciaPuerto;
	private Date arriboProcedenciaFchSal;
	private Date arriboFchEstimada;
	private Integer arriboBuqueCaladoEnt;
	private Integer arriboBuqueCaladoSal;
	private String arriboBuqueEscalaCiud;
	private String arriboBuqueEscalaPais;
	private Integer arriboBuqueEstadiaTiempo;
	private String arriboBuquePtoViajeNom;
	private Date arriboBuquePtoViajeFch;
	private Date arriboBuqPtoViajeFchSal;
	private Set<ProductoArribo> productoArribos = new HashSet<ProductoArribo>(0);
	private Set<TripulanteArribo> tripulanteArribos = new HashSet<TripulanteArribo>(
			0);

	public Datosarribo() {
	}

	public Datosarribo(Operacion operacion, String arriboBuqueSitio,
			String arriboBuqueCapNom, String arriboBuqueCapAp,
			String arriboProcedenciaCiud, String arriboProcedenciaPais,
			String arriboProcedenciaPuerto) {
		this.operacion = operacion;
		this.arriboBuqueSitio = arriboBuqueSitio;
		this.arriboBuqueCapNom = arriboBuqueCapNom;
		this.arriboBuqueCapAp = arriboBuqueCapAp;
		this.arriboProcedenciaCiud = arriboProcedenciaCiud;
		this.arriboProcedenciaPais = arriboProcedenciaPais;
		this.arriboProcedenciaPuerto = arriboProcedenciaPuerto;
	}

	public Datosarribo(Practico practico, Operacion operacion,
			String arriboBuqueSitio, String arriboBuqueCapNom,
			String arriboBuqueCapAp, Date arriboFchEstimadaSal,
			Integer arriboCargadoLastre, String arriboProcedenciaCiud,
			String arriboProcedenciaPais, String arriboProcedenciaPuerto,
			Date arriboProcedenciaFchSal, Date arriboFchEstimada,
			Integer arriboBuqueCaladoEnt, Integer arriboBuqueCaladoSal,
			String arriboBuqueEscalaCiud, String arriboBuqueEscalaPais,
			Integer arriboBuqueEstadiaTiempo, String arriboBuquePtoViajeNom,
			Date arriboBuquePtoViajeFch, Date arriboBuqPtoViajeFchSal,
			Set<ProductoArribo> productoArribos,
			Set<TripulanteArribo> tripulanteArribos) {
		this.practico = practico;
		this.operacion = operacion;
		this.arriboBuqueSitio = arriboBuqueSitio;
		this.arriboBuqueCapNom = arriboBuqueCapNom;
		this.arriboBuqueCapAp = arriboBuqueCapAp;
		this.arriboFchEstimadaSal = arriboFchEstimadaSal;
		this.arriboCargadoLastre = arriboCargadoLastre;
		this.arriboProcedenciaCiud = arriboProcedenciaCiud;
		this.arriboProcedenciaPais = arriboProcedenciaPais;
		this.arriboProcedenciaPuerto = arriboProcedenciaPuerto;
		this.arriboProcedenciaFchSal = arriboProcedenciaFchSal;
		this.arriboFchEstimada = arriboFchEstimada;
		this.arriboBuqueCaladoEnt = arriboBuqueCaladoEnt;
		this.arriboBuqueCaladoSal = arriboBuqueCaladoSal;
		this.arriboBuqueEscalaCiud = arriboBuqueEscalaCiud;
		this.arriboBuqueEscalaPais = arriboBuqueEscalaPais;
		this.arriboBuqueEstadiaTiempo = arriboBuqueEstadiaTiempo;
		this.arriboBuquePtoViajeNom = arriboBuquePtoViajeNom;
		this.arriboBuquePtoViajeFch = arriboBuquePtoViajeFch;
		this.arriboBuqPtoViajeFchSal = arriboBuqPtoViajeFchSal;
		this.productoArribos = productoArribos;
		this.tripulanteArribos = tripulanteArribos;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "Arribo_ID", unique = true, nullable = false)
	public Integer getArriboId() {
		return this.arriboId;
	}

	public void setArriboId(Integer arriboId) {
		this.arriboId = arriboId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "Arribo_Practico_ID")
	public Practico getPractico() {
		return this.practico;
	}

	public void setPractico(Practico practico) {
		this.practico = practico;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "Operacion_ID", nullable = false)
	public Operacion getOperacion() {
		return this.operacion;
	}

	public void setOperacion(Operacion operacion) {
		this.operacion = operacion;
	}

	@Column(name = "Arribo_Buque_Sitio", nullable = false, length = 30)
	public String getArriboBuqueSitio() {
		return this.arriboBuqueSitio;
	}

	public void setArriboBuqueSitio(String arriboBuqueSitio) {
		this.arriboBuqueSitio = arriboBuqueSitio;
	}

	@Column(name = "Arribo_Buque_Cap_Nom", nullable = false, length = 30)
	public String getArriboBuqueCapNom() {
		return this.arriboBuqueCapNom;
	}

	public void setArriboBuqueCapNom(String arriboBuqueCapNom) {
		this.arriboBuqueCapNom = arriboBuqueCapNom;
	}

	@Column(name = "Arribo_Buque_Cap_Ap", nullable = false, length = 30)
	public String getArriboBuqueCapAp() {
		return this.arriboBuqueCapAp;
	}

	public void setArriboBuqueCapAp(String arriboBuqueCapAp) {
		this.arriboBuqueCapAp = arriboBuqueCapAp;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Arribo_fch_Estimada_Sal", length = 19)
	public Date getArriboFchEstimadaSal() {
		return this.arriboFchEstimadaSal;
	}

	public void setArriboFchEstimadaSal(Date arriboFchEstimadaSal) {
		this.arriboFchEstimadaSal = arriboFchEstimadaSal;
	}

	@Column(name = "Arribo_Cargado_Lastre")
	public Integer getArriboCargadoLastre() {
		return this.arriboCargadoLastre;
	}

	public void setArriboCargadoLastre(Integer arriboCargadoLastre) {
		this.arriboCargadoLastre = arriboCargadoLastre;
	}

	@Column(name = "Arribo_Procedencia_Ciud", nullable = false, length = 30)
	public String getArriboProcedenciaCiud() {
		return this.arriboProcedenciaCiud;
	}

	public void setArriboProcedenciaCiud(String arriboProcedenciaCiud) {
		this.arriboProcedenciaCiud = arriboProcedenciaCiud;
	}

	@Column(name = "Arribo_Procedencia_Pais", nullable = false, length = 30)
	public String getArriboProcedenciaPais() {
		return this.arriboProcedenciaPais;
	}

	public void setArriboProcedenciaPais(String arriboProcedenciaPais) {
		this.arriboProcedenciaPais = arriboProcedenciaPais;
	}

	@Column(name = "Arribo_Procedencia_Puerto", nullable = false, length = 30)
	public String getArriboProcedenciaPuerto() {
		return this.arriboProcedenciaPuerto;
	}

	public void setArriboProcedenciaPuerto(String arriboProcedenciaPuerto) {
		this.arriboProcedenciaPuerto = arriboProcedenciaPuerto;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Arribo_Procedencia_fch_Sal", length = 19)
	public Date getArriboProcedenciaFchSal() {
		return this.arriboProcedenciaFchSal;
	}

	public void setArriboProcedenciaFchSal(Date arriboProcedenciaFchSal) {
		this.arriboProcedenciaFchSal = arriboProcedenciaFchSal;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Arribo_fch_Estimada", length = 19)
	public Date getArriboFchEstimada() {
		return this.arriboFchEstimada;
	}

	public void setArriboFchEstimada(Date arriboFchEstimada) {
		this.arriboFchEstimada = arriboFchEstimada;
	}

	@Column(name = "Arribo_Buque_Calado_Ent")
	public Integer getArriboBuqueCaladoEnt() {
		return this.arriboBuqueCaladoEnt;
	}

	public void setArriboBuqueCaladoEnt(Integer arriboBuqueCaladoEnt) {
		this.arriboBuqueCaladoEnt = arriboBuqueCaladoEnt;
	}

	@Column(name = "Arribo_Buque_Calado_Sal")
	public Integer getArriboBuqueCaladoSal() {
		return this.arriboBuqueCaladoSal;
	}

	public void setArriboBuqueCaladoSal(Integer arriboBuqueCaladoSal) {
		this.arriboBuqueCaladoSal = arriboBuqueCaladoSal;
	}

	@Column(name = "Arribo_Buque_Escala_Ciud", length = 30)
	public String getArriboBuqueEscalaCiud() {
		return this.arriboBuqueEscalaCiud;
	}

	public void setArriboBuqueEscalaCiud(String arriboBuqueEscalaCiud) {
		this.arriboBuqueEscalaCiud = arriboBuqueEscalaCiud;
	}

	@Column(name = "Arribo_Buque_Escala_Pais", length = 30)
	public String getArriboBuqueEscalaPais() {
		return this.arriboBuqueEscalaPais;
	}

	public void setArriboBuqueEscalaPais(String arriboBuqueEscalaPais) {
		this.arriboBuqueEscalaPais = arriboBuqueEscalaPais;
	}

	@Column(name = "Arribo_Buque_Estadia_Tiempo")
	public Integer getArriboBuqueEstadiaTiempo() {
		return this.arriboBuqueEstadiaTiempo;
	}

	public void setArriboBuqueEstadiaTiempo(Integer arriboBuqueEstadiaTiempo) {
		this.arriboBuqueEstadiaTiempo = arriboBuqueEstadiaTiempo;
	}

	@Column(name = "Arribo_Buque_Pto_Viaje_Nom", length = 30)
	public String getArriboBuquePtoViajeNom() {
		return this.arriboBuquePtoViajeNom;
	}

	public void setArriboBuquePtoViajeNom(String arriboBuquePtoViajeNom) {
		this.arriboBuquePtoViajeNom = arriboBuquePtoViajeNom;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Arribo_Buque_Pto_Viaje_fch", length = 19)
	public Date getArriboBuquePtoViajeFch() {
		return this.arriboBuquePtoViajeFch;
	}

	public void setArriboBuquePtoViajeFch(Date arriboBuquePtoViajeFch) {
		this.arriboBuquePtoViajeFch = arriboBuquePtoViajeFch;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "Arribo_Buq_Pto_Viaje_fch_Sal", length = 19)
	public Date getArriboBuqPtoViajeFchSal() {
		return this.arriboBuqPtoViajeFchSal;
	}

	public void setArriboBuqPtoViajeFchSal(Date arriboBuqPtoViajeFchSal) {
		this.arriboBuqPtoViajeFchSal = arriboBuqPtoViajeFchSal;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "datosarribo")
	public Set<ProductoArribo> getProductoArribos() {
		return this.productoArribos;
	}

	public void setProductoArribos(Set<ProductoArribo> productoArribos) {
		this.productoArribos = productoArribos;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "datosarribo")
	public Set<TripulanteArribo> getTripulanteArribos() {
		return this.tripulanteArribos;
	}

	public void setTripulanteArribos(Set<TripulanteArribo> tripulanteArribos) {
		this.tripulanteArribos = tripulanteArribos;
	}

}
